A solid state drive (SSD) may be comprised of multiple NAND dies. Data may be encoded and stored as codewords, such as Low Density Parity Check (LDPC) codewords, in each of the data dies and one parity die may maintain parity (XOR) information that may be used to recover the user data in the codeword if the codeword cannot be decoded on one of the NAND dies. If one of the NAND dies has bit errors resulting in a failure of the decode operation when decoding a codeword from the NAND die, the parity information for the codeword in the parity NAND die may be XOR′ d with the data for the NAND dies other than the failing NAND die failing the decode to recover the data.
The above XOR protection scheme in the parity NAND die comprises a parity check code which permits a single erasure to be corrected. If an Error Correction Code (ECC) failure occurs on one codeword, the system can rebuild the lost data from the data on the NAND dies not experiencing failure of the decode operation. This form of recovery relies on hard information from successful ECC decodes in the other dies. If more than one NAND die experiences ECC decode fails, then the data on the target failed NAND die to recover cannot be recovered through an XOR parity correction operation.
There is a need in the art for improved techniques for recovering data when one or more of the NAND dies being used for the XOR recovery also fails to decode.